As complexity of computer hardware system increases and functionality of software systems are enhanced, when a computer system (e.g., comprising hardware and software) is running on different hardware systems, its running environment becomes increasingly complex. Therefore, the system might encounter various kinds of troubles. For example, with the development of multi-core processor techniques, increasingly computing devices employ one or more processors with multi-cores, which increases the possibility of occurrence of processor troubles. Another example, with the complication of applications, the system might be confronted with other types of troubles, such as memory leaks.
In current scenarios including various application systems, typically there exists a relatively good log recording module, which is capable of recording various status of hardware/software systems during running. Generally when a trouble occurs in a system, a customer using the system can feed back details of the trouble to the system provider, and then the system provider will dispatch a technical engineer to handle the trouble.
In practical application and implementations such phenomenon may exist. For example, a server system A which a customer A is using has a trouble during running, a log file being recorded at this point is A, and through analysis a technical engineer A finds server system A has a memory leak and performs troubleshooting. Later, a server system B with the same model, which a customer B is using has a trouble, and a log file being recorded is B, when the server provider might dispatch another technical engineer B to tackle the problem.
Technical engineer B conducts on-site inspection and retrieves the failing system's historic logs from a log database, and finds that the possible causes of the trouble and determines server system B also has a memory leak. Typically, technical engineers analyze log files, identify troubles, and perform troubleshooting. All these efforts are based on the Users (engineers) experience and require a lot of manual diagnosis.